Scheduling method, base station and computer program product

ABSTRACT

A method for scheduling use of a downlink packet data traffic channel shared by a plurality of mobile and/or immobile stations, each station having a scheduling downlink transmission rate. The method comprises the steps of: determining a ranking metric for each of said mobile/immobile stations having queued data that varies directly with the mobile/immobile station&#39;s scheduling downlink transmission rate, and a delay factor indicative of the staleness of data queued for each of said mobile/immobile stations having queued data. The method also comprises the steps of: determining an uplink metric for each of said mobile/immobile stations having queued data, and scheduling one or more downlink transmissions to the mobile/immobile stations on the downlink packet data traffic channel based on said ranking metric and on said uplink metric.

This application is the U.S. national phase of International ApplicationNo. PCT/SE2007/050529, filed 18 Jul. 2007, which designated the U.S.,the entire contents of which is hereby incorporated by reference.

TECHNICAL FIELD

The technology includes a method for scheduling for scheduling use of adownlink packet data traffic channel shared by a plurality of mobileand/or immobile stations, a base station for a wireless communicationsnetwork, and a computer program product.

BACKGROUND

The demand for wireless data services, such as mobile Internet, videostreaming, and voice over IP (VoIP), have led to the development of highspeed packet data channels to provide high data rates needed for suchservices. High speed packet data channels are employed on the forwardlink in IS-2000 (also known as IxEV-DV), IS-856 (also known as IxEV-DO),and Wideband Code Division Multiple Access (WCDMA) systems. The highspeed packet data channel is a time shared channel. Downlinktransmissions, (where “downlink” is a signal received by a subscriberradio device from a Base Transceiver Station (BTS) or base station), aretime-multiplexed and transmitted at full power.

At any given time, a base station may transmit a packet to one or moremobile stations on the physical layer channel known as the downlink highspeed packet data channel. Deciding which mobile station(s) to servewith the packet at a given time is the function of a “scheduler.” Anumber of different scheduling strategies can be used, each with adifferent implication for system throughput and fairness. Typicalscheduling strategies employed include round-robin, maximum throughput,and proportional fairness. In addition, quality of service requirementsfrequently add scheduling complexities. For example, VoIP packet data,due to its conversational characteristic, typically has a relativelyshort maximum allowed transmission delay before service is considered tohave degraded unacceptably. Thus, it is commonly necessary to scheduleVoIP packet data for transmission more frequently than other packet datain order to maintain acceptable service.

However, simply scheduling VoIP packet data more frequently may resultin inefficient use of available resources. This is because VoIP data istypically supplied at a relatively low rate. As a result, VoIP dataqueued for transmission to a particular mobile station is typically lessthan a full packet's worth of data. Thus, if only that VoIP packet datais transmitted in a given physical layer packet, the packet is mostprobably less than full, and typically considerably less than full.Transmitting less than full packets, particularly relatively lightlyloaded packets, unnecessarily consumes available system resources, andmay result in a degradation of the service provided to the other mobilestations being served by a given base station.

International publication no. WO 2006/055173 discloses a method forscheduling use of a downlink packet data traffic channel shared by aplurality of mobile stations. The method comprises the steps ofcalculating a ranking metric (or scheduling priority) for a mobilestation that varies directly with the mobile station's schedulingdownlink transmission rate and a delay factor indicative of thestaleness of data queued for the mobile station, and scheduling one ormore downlink transmissions to the mobile station on the downlink packetdata traffic channel based on said ranking metric. Such a method isbetter adapted to the downlink transmissions of VoIP data on high speedpacket data channels.

The delay based scheduling described in the above-referencedinternational publication is however only used in the downlink. In awireless communication system, some types of signaling traffic such asSIP (Session Initiation Protocol) traffic includes uplink (where“uplink” is the signal sent from a subscriber radio device to the basestation) and downlink traffic being transmitted concurrently. Generally,the uplink traffic includes the request messages or acknowledgement orresponse needed to be transmitted to a SIP server, and the downlinktraffic includes the response messages or acknowledgement needed to betransmitted to an SIP client. Uplink traffic may therefore interact andinterfere with downlink traffic and the resulting performance loss inuplink traffic and/or downlink traffic will degrade the overallperformance of the communication system. For example, if one uplinkmessage is delayed due to the system overload in the uplink, a SIP setupphase duration will be increased. This means that the number ofconcurrently served SIP sessions will be increased (assuming that theSIP session arrival follows the Poisson process) and the uplink noiserise and the load on the uplink will consequently be increased. Thiswill decrease the system capacity and increase the SIP setup delay. Thesame applies to downlink messages.

SUMMARY

An object is to provide improved downlink delay based scheduling.

This object is achieved by a method for scheduling use of a downlinkpacket data traffic channel shared by a plurality of mobile and/orimmobile stations, each station having a scheduling downlinktransmission rate (whereby some, or all of the mobile and/or immobilestations may have the same or different scheduling downlink transmissionrate). The method comprises the steps of: determining, i.e. calculating,measuring or estimating, a ranking metric, or scheduling priority, foreach of the mobile/immobile stations having queued data, whereby aranking metric varies directly with a mobile/immobile station'sscheduling downlink transmission rate and a delay factor indicative ofthe staleness of data queued for each mobile/immobile station. Themethod also comprises the step of determining an uplink metric for eachof the mobile/immobile stations, and scheduling one or more downlinktransmissions to the mobile/immobile station on the downlink packet datatraffic channel based on the ranking metric and on the uplink metric.The performance, transport efficiency and service quality of acommunications network, is improved by considering an uplink metric inthe scheduling process.

It should be noted that the expression “mobile station” includes acellular radiotelephone, a mobile Personal Communications System (PCS)terminal that may combine a cellular radiotelephone with dataprocessing, facsimile, and data communications capabilities; a mobilePersonal Data Assistant (PDA) that may include a pager, Web browser,radiotelephone, Internet/Intranet access, organizer, calendar, and aconventional laptop and/or palmtop receiver or other mobile appliancesthat include a radiotelephone transceiver.

The expression “immobile station” includes an immobile radiotelephone,an immobile Personal Communications System (PCS) terminal that maycombine a radiotelephone with data processing, facsimile, and datacommunications capabilities; an immobile Personal Data Assistant (PDA)that may include a pager, Web browser, radiotelephone, Internet/Intranetaccess, organizer, calendar, a static conventional laptop and/or palmtopreceiver or other immobile appliances that include a radiotelephonetransceiver.

According to an example embodiment the uplink metric is an uplink loador uplink noise rise. The uplink metric may be a downlink load if theuplink load is difficult or not possible to determine since forcommunications networks in which there is an interaction between uplinkand downlink, downlink load can be a good indicator of uplink load. Aprerequisite for proper behavior of network algorithms is that not moreusers than actually can be served are admitted into a system. This ishowever difficult to ensure. The situation is especially hard in theuplink communications from mobile/immobile stations to the basestations, since the system has no absolute control of the transmitterpowers of the mobile/immobile stations. These may for example depend onradio propagation conditions, which are subject to rapid change. Thenoise rise, NR, is the total received power relative to the noise powerand noise rise can be associated to a cell load L, which is defined by:

${NR} = {\frac{1}{1 - L}.}$

A high level of noise rise means that many mobile/immobile stations willhave insufficient transmission power to transmit data successfully atthe allocated service data rate (i.e. insufficient service coverage). Itis also an indication of potential instability problems in the network.

According to another example embodiment the step of determining theranking metric comprises determining the ranking metric as a function ofpacket delay and delay threshold. The delay threshold may represent themaximum allowed delay.

According to a further example embodiment the downlink packet datatraffic channel is arranged to carry mixed traffic, such as audiosignals, video signals, Voice over Internet Protocol (VoIP) and SessionInitiation Protocol (SIP) signalling traffic, where there may be aninteraction between uplink and downlink.

According to an example embodiment the same delay threshold is used forall traffic when the uplink is loaded with mixed traffic above apredetermined amount, i.e. highly loaded. For example, if SIP traffichas the same delay threshold as VoIP traffic, both SIP and VoIP will begranted the same transmission priority. Since SIP traffic includesuplink and downlink traffic, if SIP traffic were granted lower prioritythan VoIP traffic, the SIP setup session duration would be prolonged.The number of concurrently served SIP sessions would increase if thearrival of SIP sessions followed the Poisson process. This wouldincrease the uplink noise rise and cause the uplink to become morehighly loaded. The performance of VoIP traffic would consequently bedecreased. Alternatively, if SIP traffic were granted higher prioritythan VoIP traffic, the delay of VoIP packets would decrease and thiswould degrade VoIP performance. SIP and VoIP sharing the same prioritywhen the uplink is highly loaded is therefore the best option for mixedVoIP and SIP traffic.

According to another example embodiment different delay thresholds areused for different types of traffic when the uplink is loaded with mixedtraffic below a predetermined amount, i.e. lightly loaded. For example,if SIP traffic has a larger delay threshold than VoIP traffic, VoIP isgranted higher transmission priority than SIP signalling traffic, andVoIP performance can thereby be improved.

According to a further example embodiment the scheduling is performed bya base station of a wireless communications network.

According to a example embodiment the calculation of an uplink metric isperformed by a base station of a wireless communication network.

According to another example embodiment the calculation of an uplinkmetric is performed by a network controller, such as a radio networkcontroller (RNC) of a wireless communication network and the uplinkmetric is notified to a base station of the wireless communicationnetwork.

According to a further example embodiment the downlink packet datatraffic channel is part of a Wideband Code Division Multiple Access(WCDMA) network using Enhanced Uplink (EUL) and High Speed DownlinkPacket Access (HSDPA).

The technology also concerns a base station for a communications networkcomprising a scheduler to schedule use of a downlink packet data trafficchannel shared by a plurality of mobile and/or immobile stations, eachstation having a scheduling downlink transmission rate. The schedulercomprising one or more processing circuits configured to determine aranking metric for each of the mobile/immobile stations that variesdirectly with the mobile/immobile station's scheduling downlinktransmission rate and a delay factor indicative of the staleness dataqueued for the mobile/immobile station. The one or more processingcircuits are also configured to determine an uplink metric for each ofthe stations, and schedule one or more downlink transmissions to themobile/immobile station on the downlink packet data traffic channelbased on the ranking metric and on the uplink metric. The communicationsnetwork may be a wireless communications network. Examples of wirelesscommunication means are radio frequency-, infra-red- or otherwavelength-based forms of signal transfer such as Bluetooth transmissionand detection or satellite transmission and detection.

Further embodiments of the base station are given in the appendeddependent base station claims.

A computer program product is described that comprises a computerprogram containing computer program code means arranged to cause acomputer or a processor to execute at least one, or all of thecharacterizing steps of described methods according to any of theexample embodiments, stored on a computer-readable medium or a carrierwave.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows an exemplary wireless communication network,

FIG. 2 shows an exemplary base station for a wireless communicationsnetwork.

FIG. 3 shows exemplary scheduler logic circuits for a wirelesscommunication network,

FIG. 4 shows a flowchart for an exemplary scheduling approach, and

FIG. 5 shows a flowchart for an exemplary packet filling process.

It should be noted that the drawings have not been drawn to scale andthat the dimensions of certain features have been exaggerated for thesake of clarity.

DETAILED DESCRIPTION OF NON-LIMITING EXAMPLE EMBODIMENTS

FIG. 1 illustrates logical entities of an exemplary wirelesscommunication network 10 (configured according to the IS-2000 standardalthough other it could be configured to some other standard, such as1xEV-DO or WCDMA) that provides packet data services to mobile andimmobile stations 12.

The wireless communication network 10 is a packet-switched network thatemploys a Forward Traffic Channel (FTC) known as the high-speed forwardpacket data channel (F-PDCH) to transmit data to the mobile and immobilestations 12. The wireless communication network 10 comprises apacket-switched core network 14 and a radio access network (RAN) 16. Thecore network 14 includes a Packet Data Serving Node (PDSN) 18 thatconnects to an external packet data network (PDN) 20, such as theInternet, and supports Point-to-Point Protocol (PPP) connections to andfrom the mobile/immobile stations 12 via specialized radio links. Thecore network 14 adds and removes IP streams to and from the RAN 16 androutes packets between the external packet data network 20 and the RAN14.

The RAN 16 connects to the core network 14 and gives mobile/immobilestations 12 access to the core network 14. The RAN 16 includes a PacketControl Function (PCF) 22, one or more base station controllers (BSCs)24 and one or more radio base stations (RBSs) 26. The primary functionof the PCF 22 is to establish, maintain, and terminate connections tothe PDSN 18. The BSCs 24 manage radio resources within their respectivecoverage areas. The RBSs 26 include the radio equipment forcommunicating over the air interface with mobile/immobile stations 12. ABSC 24 can manage more than one RBSs 26. In cdma2000 networks, a BSC 24and an RBS 26 comprise a base station 28. The BSC 24 is the control partof the base station 28. The RBS 26 is the part of the base station 28that includes the radio equipment and is normally associated with a cellsite. In cdma2000 networks, a single BSC 24 may function as the controlpart of multiple base stations 28. In other network architectures basedon other standards, the network components comprising the base station28 may be different but the overall functionality is the same orsimilar.

FIG. 2 illustrates exemplary details of a base station 28 in a cdma2000network. The base station components in the exemplary embodiment aredistributed between an RBS 26 and a BSC 24. The RBS 26 includes RFcircuits 30, baseband processing and control circuits 32, and interfacecircuits 34 for communicating with the BSC 24. The RF circuits 30include one or more transmitters T and receivers X, which transmitsignals to, and receive signals from, the mobile/immobile stations 12.For example, the receiver X receives the channel quality indicators(CQIs) and/or data rate control (DRC) values reported by themobile/immobile stations 12 and passes the same on to the basebandprocessing and control circuits 32 for processing. The basebandprocessing and control circuits 32 perform baseband processing oftransmitted and received signals. In the embodiment shown in FIG. 2, thebaseband processing and control circuits 32 include a scheduler 36 toschedule packet data transmissions on the Forward Packet Data Channel(F-PDCH). The baseband processing and control circuit 32 may beimplemented in software, hardware, or some combination of both. Forexample, the baseband processing and control circuit 32 may beimplemented as stored program instructions executed by one or moremicroprocessors or other logic circuits included in an RBS 26.

The BSC 24 includes interface circuits 38 for communicating with the RBS26, communication control circuits 40, and interface circuits 42 forcommunicating with the PCF 22. The communication control circuits 40manage the radio and communication resources used by the base station28. The communication control circuits 40 are responsible for settingup, maintaining and tearing down communication channels between an RBS26 and a mobile/immobile station 12. The communication control circuits40 may also allocate Walsh codes and perform power control functions.The communication control circuits 40 may be implemented in software,hardware, or some combination of both. For example, the communicationcontrol circuits 40 may be implemented as stored program instructionsexecuted by one or more microprocessors or other logic circuits includedin a BSC 24.

FIG. 3 illustrates a scheduler 36 according to one exemplary embodiment.The scheduler 25 makes scheduling decisions and selects the appropriatemodulation and coding schemes based on, inter alia, channel feedbackfrom the mobile/immobile stations 12. The scheduler 36 may beimplemented as one or more processing circuits, comprising hardware,software, or any combination thereof, that is/are configured toimplement one or more of the processes described herein. The scheduler36 conceptually includes a rate and uplink metric determining means,such as a calculator circuit 44, and a scheduling unit circuit 46.

With reference to the flow diagram of FIG. 4, the calculator circuit 44receives the channel quality indicators (CQIs) and uplink metric data(ULM data) from the mobile/immobile stations 12 for each of themobile/immobile stations 12. This information is used to set ascheduling data transmission rate for each mobile/immobile station 12.The calculator circuit 44 maps the reported CQI values and ULM data toone of a set of predefined modulation and coding schemes, which in turndetermines the “scheduling” data rate R for a mobile/immobile station12. Alternatively, the calculator circuit 44 may use reported DRC valuesrather than CQIs. Of course, any suitable method for establishing thescheduling data rate R known in the art may used. The scheduling rate(R₁, R₂ . . . R_(n)) and uplink metric data for each mobile/immobilestation 12 is input to the scheduling unit 46 for making schedulingdecisions. The scheduling unit 46 uses a scheduling algorithm toschedule users. The scheduling algorithm namely calculates, at periodicintervals, a ranking metric (RANK) and an uplink metric (ULM), such asuplink load or uplink noise rise, for each mobile/immobile station 12having queued data, and then schedules the transmission of physicallayer packets to those mobile/immobile stations 12 based on the rankingmetrics and uplink metrics. Each mobile/immobile station 12, or class ofmobile/immobile station (or class of service to a mobile/immobilestation), may have a different formula for determining the schedulingranking metric and uplink metric. For example, VoIP users may have aformula for calculating a ranking metric that emphasizes delay on anon-linear basis. In particular, such users may have a ranking metric;RANK=R/(d _(max) −d)^(k)where R represents a mobile/immobile station's scheduling downlinktransmission rate from the rate calculator 44, d_(max) represents thedelay threshold before quality of service is expected to becomeunacceptable due to delay, d represents the current delay, and k is asensitivity exponent.

The delay threshold d_(max) is established based quality of serviceconsiderations, typically by the service provider, based on allowedend-to-end delay budgets and expected delays elsewhere in thecommunication path. The current delay d corresponds to the currentamount of delay, or latency, of the data queued for that mobile station.The sensitivity factor k helps establish how sensitive the RANK functionis to delay. The sensitivity factor k may have any positive value,integer or otherwise, with increasing values of k being less sensitiveto delay. When the current delay d is substantially less than d_(max),then the RANK formula above acts very much like a maximum throughputranking formula. However, as the current delay d approaches d_(max), thevalue of RANK becomes heavily influenced by the current delay, reachinga maximum when d=d_(max). Thus, when the current delay is high, thevalue of RANK becomes relatively higher for a given schedulingtransmission rate R.

As mentioned above, the current delay d corresponds to the currentamount of delay, or latency, of the data queued for the particularmobile/immobile station 12 of interest. The current delay d may beestablished in a variety of ways. For example, the current delay d maybe the delay experienced by the oldest data in the relevant queue.Alternatively, the current delay d may be the expected delay, undercurrent or historical conditions, of the data most recently receivedinto the relevant queue. Of course, other approaches to establishing thecurrent delay d may be used, provided that they correspond to thecurrent amount of delay associated with the data queued for theparticular mobile station of interest.

If the input rate of the queued data is assumed to be constant, then, asanother method of sensitizing the rank calculation to delay, buffer sizemay be used as a proxy for delay. More particularly, the equation forRANK may be changed to;RANK=R/(q _(max) −q)^(k)where R represents the mobile station's scheduling downlink transmissionrate from the calculator circuit 44, q_(max) represents the thresholdbuffer size for the queued data before unacceptable degradation inquality of service due to delay is expected, q represents the amount ofbuffer consumed by the presently queued data for that mobile station,and k is the sensitivity exponent. Similarly to the above, the maximumallowed buffer size q_(max) is established based on quality of serviceconsiderations and delay budgets, with an assumption of constant inputrate to the queued data buffer. For simplicity both delay d and currentbuffer size q may be referred to as a delay factor.

For both of the above formulas, the value of RANK for a given schedulingtransmission rate R therefore varies directly, but non-linearly, with anincreasing delay factor. Furthermore, both formulas represent ways tocalculate the ranking metric RANK as a function of the schedulingtransmission rate R divided by the difference between a threshold andthe delay factor. Also, it should be noted that the value of thesensitivity factor k need not be constant. Instead, the sensitivityfactor k may be adjusted to improve system capacity or quality ofservice (QoS). The base station 28 may increase the value of thesensitivity factor k, making the ranking metric less sensitive to delayfor small delays, in order to increase system capacity. Alternatively,the base station 28 may decrease the value of the sensitivity factor k,making the ranking metric more sensitive to delay for small delays, inorder to improve quality of service.

Armed with the ranking metric and uplink metric of each of themobile/immobile stations 12 having queued data, the scheduling unit 64selects the mobile/immobile station 12 to be transmitted to for thecorresponding physical layer packet on the downlink packet data channel.That mobile/immobile station 12 is identified herein as the “primaryscheduled mobile/immobile station,” or simply “primary mobile/immobilestation.” The primary mobile station will have an associated schedulingdownlink transmission rate, as discussed above. This rate may bereferred to as the tentative downlink transmission rate, for reasonsexplained further below.

In some embodiments, a packet is then transmitted to the primarymobile/immobile station at the tentative downlink transmission rate, inany conventional fashion known in the art. However, in otherembodiments, the amount of data queued for the primary mobile/immobilestation is evaluated to determine if the corresponding packet would befull, if transmitted at the tentative downlink transmission rate, withonly data queued for the primary mobile/immobile station included in thepacket's payload. If the primary mobile/immobile station has sufficientqueued data to fill the packet (if transmitted at the tentative rate),then the tentative rate is selected as the downlink transmission rateand the packet is transmitted at that rate. If the data queued for theprimary mobile/immobile station is insufficient to fill the packet, thenother queued data is advantageously added to the packet, as discussedfurther below, in order to achieve better overall system throughput. Thedata added to the packet may first come from data queued for othermobile/immobile stations that have an associated scheduling rate R thatis the same as the primary mobile/immobile station.

For example, the scheduling unit 46 may evaluate the list of candidatemobile/immobile stations having queued data in rank order, looking forother mobile/immobile stations having the same scheduling rate R. If thedata queued for such mobile/immobile stations, when aggregated with thedata for the primary mobile station already allocated to the packet, isinsufficient to fill the packet, the scheduling unit 46 may expand thesearch to add mobile terminals with scheduling rates that are higher, byone or more levels, than that of the primary mobile station. Themobile/immobile terminals 12 with both queued data and scheduling ratesR of at least as high as the primary mobile station are referred toherein as “supplemental mobile stations.” Thus, the packing filingprocess advantageously looks to fill an otherwise under-filled packetwith queued data for other supplemental mobile/immobile stations havingassociated scheduling rates of R (or ≧R). Assuming data is added, theresulting multi-user packet may be transmitted on the downlink packetdata channel at rate R to the primary and supplemental mobile/immobilestations. This approach allows the base station 28 to more efficientlyuse the available resources by serving the primary mobile/immobilestation and other mobile/immobile stations in a multi-user packettransmitted on the downlink packet data channel at rate R.

However, in some cases, the amount of data queued for the primary andsupplemental mobile/immobile stations may not be enough to sufficientlyfill the multi-user packet. Some example embodiments addresses thissituation by conceptually exploring whether more data could be added tothe packet's payload by lowering the downlink transmission rate to arate lower than the rate R associated with the primary mobile/immobilestation (i.e., the tentative rate). With reference to the flow chart ofFIG. 5, the scheduling unit 46 namely calculates the aggregate amount ofdata allocated to the packet and compares this to a threshold. Forexample, the threshold may be a ratio of 0.50 for the aggregate amountof data compared against the capacity Tc of the packet at the tentativerate. If the aggregate amount of data is more than 50%, therebysatisfying the threshold, the tentative rate is selected as the downlinktransmission rate, and the packet is transmitted at the selected ratewithout adding more queued data to the payload of the packet. If theaggregate amount of data already allocated to the packet is less than50%, (thereby failing to satisfy the threshold) it is possible that theamount of data transmitted in the packet may be increased by loweringthe transmission rate, and the process therefore attempts to findadditional queued data to add to the packet.

The scheduling unit 46 evaluates the list of candidate mobile stationshaving queued data in rank order, looking for other mobile stationshaving an associated achievable rate of the next lower rate R′ than thescheduling rate R associated with the primary mobile/immobile station.Assuming that there are some such mobile/immobile terminals, thescheduler adds their queued data to the downlink packet (advantageouslyin rank order) until the packet is full or the list is exhausted.Mobile/immobile stations with lower scheduling rates may be called“additional mobile stations” in order to distinguish them from the“supplemental mobile stations” with higher scheduling rates. If noqueued data for additional mobile stations may be added to the packet,the packet is transmitted at rate R associated with the primarymobile/immobile station.

If, on the other hand, queued data for additional mobile/immobilestations may be added to the packet, the queued data is added to thepacket, the transmission rate is lowered to R′, and the packet istransmitted at rate R′. The result of this process, in some embodiments,is to allow significantly under-filled packets to have additional queueddata added thereto by lowering the anticipated transmission rate for thepacket.

In the embodiment described above, the illustrative threshold was 0.50,but it should be understood that other threshold values may be used. Thevalue of 0.50 was used as the illustrative example because it is typicalin IS-2000 systems for each rate level to be twice the rate of the nextlower level. Thus, if x amount of data is to be transmitted at rate R,and x is more than half of the capacity Tc of the packet at rate R, thencomparing x to 0.50 Tc effectively determines that there will be no netgain in data transmitted by lowering the rate to R′. Likewise, if X isless than half of Tc, then comparing X to 0.50 Tc suggests thatadditional data may be added to the packet if the transmission rate islowered. However, it should be noted that some systems may have adifferent relation between adjacent rate levels. If so, then thethreshold values should be adjusted accordingly. For example, if eachhigher rate is only 25% more than the next lower rate, then a suitablethreshold value may be 4/5=80%. Of course, the threshold values need nottrack the rate level relationships, but such is believed advantageous.Further, in some embodiments, if the packet still remains significantlyunder-filled, then the process may loop back and repeat the packetfilling steps one or more times, substituting lowered rate R′ for rate Rand adjusting the capacity of the packet Tc accordingly.

Further modifications within the scope of the claims would be apparentto a skilled person.

1. A method for scheduling use of a downlink packet data traffic channelshared by a plurality of mobile and/or immobile stations, each stationhaving a scheduling downlink transmission rate, the method comprisingthe steps of: receiving a channel quality indicator (CQI) for thedownlink packet data traffic channel from a base station to each of saidmobile/immobile stations, based on received CQIs for the downlink packetdata traffic channel, determining a ranking metric for each of saidmobile/immobile stations having queued data that varies with themobile/immobile station's scheduling downlink transmission rate, and adelay factor indicative of the staleness of data queued for each of saidmobile/immobile stations having queued data, determining an uplinkmetric, which is different from the CQI, for each of saidmobile/immobile stations having queued data, wherein the uplink metricis a measure of an uplink load or an uplink noise rise of an uplinkchannel from one of the mobile/immobile stations to the base station,and scheduling one or more downlink transmissions to the mobile/immobilestations on the downlink packet data traffic channel based on saidranking metric and on said uplink metric, wherein said downlink packetdata traffic channel is arranged to carry mixed traffic, such as audiosignals, video signals, Voice over Internet Protocol (VoIP) and SessionInitiation Protocol (SIP) signalling traffic, where the uplink channelis arranged to carry uplink information related to the mixed traffic. 2.A method according to claim 1, wherein said determining of said rankingmetric comprises determining said ranking metric as a function of packetdelay and delay threshold.
 3. A method according to claim 2, whereinsaid delay threshold represents the maximum allowed delay.
 4. A methodaccording to claim 1, wherein the same delay threshold is used for alltraffic when the uplink is loaded with mixed traffic above apredetermined amount.
 5. A method according to claim 1, whereindifferent delay thresholds are used for different types of traffic whenthe uplink is loaded with mixed traffic below a predetermined amount. 6.A method according to claim 1, wherein said scheduling is performed by abase station of a wireless communication network.
 7. A method accordingto claim 1, wherein said calculation of an uplink metric is performed bya base station of a wireless communication network.
 8. A methodaccording to claim 1, wherein said calculation of an uplink metric isperformed by a network controller of a communications network, such as aradio network controller (RNC) of a wireless communication network.
 9. Amethod according to claim 8, wherein said uplink metric is notified to abase station of the communication network.
 10. A method according toclaim 1, wherein said downlink packet data traffic channel is part of aWideband Code Division Multiple Access (WCDMA) network using EnhancedUplink (EUL) and High Speed Downlink Packet Access (HSDPA).
 11. A basestation for a wireless communications network comprising a scheduler toschedule use of a downlink packet data traffic channel shared by aplurality of mobile and/or immobile stations, each station having ascheduling downlink transmission rate, said scheduler comprising one ormore processing circuits configured to: receive a channel qualityindicator (CQI) for the downlink packet data traffic channel from thebase station to each of said mobile/immobile stations, based on receivedCQIs for the downlink packet data traffic channel, determine a rankingmetric for each of said mobile/immobile stations having queued data,that varies with the mobile/immobile station's scheduling downlinktransmission rate and a delay factor indicative of the staleness dataqueued for each mobile/immobile station, determine an uplink metric,which is different from the CQI, for each of said mobile/immobilestations having queued data, wherein the uplink metric is a measure ofan uplink load or an uplink noise rise of an uplink channel from one ofthe mobile/immobile stations to the base station, and schedule one ormore downlink transmissions to each mobile/immobile station on thedownlink packet data traffic channel based on said ranking metric and onsaid uplink metric, wherein said downlink packet data traffic channel isarranged to carry mixed traffic, such as audio signals, video signals,Voice over Internet Protocol (VoIP) and Session Initiation Protocol(SIP) signalling traffic, where the uplink channel is arranged to carryuplink information related to the mixed traffic.
 12. The base stationaccording to claim 11, wherein said one or more processing circuits areconfigured to determine said ranking metric by determining said rankingmetric as a function of packet delay and delay threshold.